package com.ethanzzh.security.ethanzzhcore.validate.code;

import org.springframework.web.context.request.ServletWebRequest;

/**
 * @author: Ethanzzh
 * @create: 2018-06-02 15:26
 **/
public interface ValidateCodeProcessor {

    /**
     * 验证码放入session时的前缀
     */
    String SESSION_KEY_PREFIX = "SESSION_KEY_FOR_CODE_";



    /**
     * 创建校验码
     *
     * @param request
     * @throws Exception
     * ServletWebRequest 是Spring的工具类 封装请求和响应
     * request 和 response 都可以放到里面
     */
    void create(ServletWebRequest request) throws Exception;

    /**
     * 校验验证码
     *
     * @param servletWebRequest
     * @throws Exception
     */
    void validate(ServletWebRequest servletWebRequest);
}
